Iteration
The following functions drive the iteration of each algorithm. Each
function performs one iteration to update the state of any minimizer of the
corresponding type. The same functions work for all minimizers so that
different methods can be substituted at runtime without modifications to
the code.
- Function: int gsl_min_fminimizer_iterate (gsl_min_fminimizer * s)
-
This function performs a single iteration of the minimizer s. If the
iteration encounters an unexpected problem then an error code will be
returned,
GSL_EBADFUNC
-
the iteration encountered a singular point where the function evaluated
to
Inf
or NaN
.
GSL_FAILURE
-
the algorithm could not improve the current best approximation or
bounding interval.
The minimizer maintains a current best estimate of the position of the
minimum at all times, and the current interval bounding the minimum.
This information can be accessed with the following auxiliary functions,
- Function: double gsl_min_fminimizer_x_minimum (const gsl_min_fminimizer * s)
-
This function returns the current estimate of the position of the
minimum for the minimizer s.
- Function: double gsl_min_fminimizer_x_upper (const gsl_min_fminimizer * s)
-
- Function: double gsl_min_fminimizer_x_lower (const gsl_min_fminimizer * s)
-
These functions return the current upper and lower bound of the interval
for the minimizer s.
- Function: double gsl_min_fminimizer_f_minimum (const gsl_min_fminimizer *s)
-
- Function: double gsl_min_fminimizer_f_upper (const gsl_min_fminimizer *s)
-
- Function: double gsl_min_fminimizer_f_lower (const gsl_min_fminimizer *s)
-
These functions return the value of the function at the current estimate
of the minimum and at the upper and lower bounds of interval for the
minimizer s.